package com.shenqi.language.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 词条对象 language_vocabulary
 * 
 * @author shenqi
 * @date 2025-08-05
 */
public class Vocabulary extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 单词 */
    @Excel(name = "单词")
    private String word;

    /** 词组 */
    @Excel(name = "词组")
    private String collocation;

    /** 例句 */
    @Excel(name = "例句")
    private String sentence;

    /** 例句翻译 */
    @Excel(name = "例句翻译")
    private String sentenceMeaning;

    /** 单词翻译 */
    @Excel(name = "单词翻译")
    private String wordMeaning;

    /** 词组翻译 */
    @Excel(name = "词组翻译")
    private String collocationMeaning;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long category;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long subCategory;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Integer status;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String wordVoiceOrg;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String collocationVoiceOrg;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String sentenceVoiceOrg;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String partOfSpeech;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String site;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Integer type;

    /** 音标 */
    @Excel(name = "音标")
    private String pronunciation;

    /** 单词语音 */
    @Excel(name = "单词语音")
    private String wordVoice;

    /** 词组语音 */
    @Excel(name = "词组语音")
    private String collocationVoice;

    /** 例句语音 */
    @Excel(name = "例句语音")
    private String sentenceVoice;

    /** 分类ID */
    @Excel(name = "分类ID")
    private Long categoryId;

    /** 二级分类ID */
    @Excel(name = "二级分类ID")
    private Long subCategoryId;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setWord(String word) 
    {
        this.word = word;
    }

    public String getWord() 
    {
        return word;
    }
    public void setCollocation(String collocation) 
    {
        this.collocation = collocation;
    }

    public String getCollocation() 
    {
        return collocation;
    }
    public void setSentence(String sentence) 
    {
        this.sentence = sentence;
    }

    public String getSentence() 
    {
        return sentence;
    }
    public void setSentenceMeaning(String sentenceMeaning) 
    {
        this.sentenceMeaning = sentenceMeaning;
    }

    public String getSentenceMeaning() 
    {
        return sentenceMeaning;
    }
    public void setWordMeaning(String wordMeaning) 
    {
        this.wordMeaning = wordMeaning;
    }

    public String getWordMeaning() 
    {
        return wordMeaning;
    }
    public void setCollocationMeaning(String collocationMeaning) 
    {
        this.collocationMeaning = collocationMeaning;
    }

    public String getCollocationMeaning() 
    {
        return collocationMeaning;
    }
    public void setCategory(Long category) 
    {
        this.category = category;
    }

    public Long getCategory() 
    {
        return category;
    }
    public void setSubCategory(Long subCategory) 
    {
        this.subCategory = subCategory;
    }

    public Long getSubCategory() 
    {
        return subCategory;
    }
    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }
    public void setWordVoiceOrg(String wordVoiceOrg) 
    {
        this.wordVoiceOrg = wordVoiceOrg;
    }

    public String getWordVoiceOrg() 
    {
        return wordVoiceOrg;
    }
    public void setCollocationVoiceOrg(String collocationVoiceOrg) 
    {
        this.collocationVoiceOrg = collocationVoiceOrg;
    }

    public String getCollocationVoiceOrg() 
    {
        return collocationVoiceOrg;
    }
    public void setSentenceVoiceOrg(String sentenceVoiceOrg) 
    {
        this.sentenceVoiceOrg = sentenceVoiceOrg;
    }

    public String getSentenceVoiceOrg() 
    {
        return sentenceVoiceOrg;
    }
    public void setPartOfSpeech(String partOfSpeech) 
    {
        this.partOfSpeech = partOfSpeech;
    }

    public String getPartOfSpeech() 
    {
        return partOfSpeech;
    }
    public void setSite(String site) 
    {
        this.site = site;
    }

    public String getSite() 
    {
        return site;
    }
    public void setType(Integer type) 
    {
        this.type = type;
    }

    public Integer getType() 
    {
        return type;
    }
    public void setPronunciation(String pronunciation) 
    {
        this.pronunciation = pronunciation;
    }

    public String getPronunciation() 
    {
        return pronunciation;
    }
    public void setWordVoice(String wordVoice) 
    {
        this.wordVoice = wordVoice;
    }

    public String getWordVoice() 
    {
        return wordVoice;
    }
    public void setCollocationVoice(String collocationVoice) 
    {
        this.collocationVoice = collocationVoice;
    }

    public String getCollocationVoice() 
    {
        return collocationVoice;
    }
    public void setSentenceVoice(String sentenceVoice) 
    {
        this.sentenceVoice = sentenceVoice;
    }

    public String getSentenceVoice() 
    {
        return sentenceVoice;
    }
    public void setCategoryId(Long categoryId) 
    {
        this.categoryId = categoryId;
    }

    public Long getCategoryId() 
    {
        return categoryId;
    }
    public void setSubCategoryId(Long subCategoryId) 
    {
        this.subCategoryId = subCategoryId;
    }

    public Long getSubCategoryId() 
    {
        return subCategoryId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("word", getWord())
            .append("collocation", getCollocation())
            .append("sentence", getSentence())
            .append("sentenceMeaning", getSentenceMeaning())
            .append("wordMeaning", getWordMeaning())
            .append("collocationMeaning", getCollocationMeaning())
            .append("category", getCategory())
            .append("subCategory", getSubCategory())
            .append("status", getStatus())
            .append("wordVoiceOrg", getWordVoiceOrg())
            .append("collocationVoiceOrg", getCollocationVoiceOrg())
            .append("sentenceVoiceOrg", getSentenceVoiceOrg())
            .append("partOfSpeech", getPartOfSpeech())
            .append("site", getSite())
            .append("type", getType())
            .append("pronunciation", getPronunciation())
            .append("wordVoice", getWordVoice())
            .append("collocationVoice", getCollocationVoice())
            .append("sentenceVoice", getSentenceVoice())
            .append("categoryId", getCategoryId())
            .append("subCategoryId", getSubCategoryId())
            .toString();
    }
}
